bitkeeper revision 1.1058 (40ee95423ht4Gq0VKvBW7yu6DP8hZA)
authormjw@wray-m-3.hpl.hp.com <mjw@wray-m-3.hpl.hp.com>
Fri, 9 Jul 2004 12:53:22 +0000 (12:53 +0000)
committermjw@wray-m-3.hpl.hp.com <mjw@wray-m-3.hpl.hp.com>
Fri, 9 Jul 2004 12:53:22 +0000 (12:53 +0000)
Pass domain name down to vifctl to avoid recursion.

tools/python/xen/xend/XendDomainInfo.py
tools/python/xen/xend/server/netif.py

index 89b23054ced2ffc3f9535f1e662e242c0f652d70..fd1cfd9aadde4ef6025bf3a8d9593b9ca02f1913 100644 (file)
@@ -780,7 +780,7 @@ def vm_dev_vif(vm, val, index):
     defer = xend.netif_dev_create(vm.dom, vif, val, recreate=vm.recreate)
     def fn(id):
         dev = xend.netif_dev(vm.dom, vif)
-        dev.vifctl('up')
+        dev.vifctl('up', vmname=vm.name)
         vm.add_device('vif', dev)
         print 'vm_dev_vif> created', dev
         return id
index 4d3b854bedae746f827e1fe2292ebd5455c9a664..894dc85832dd4dbc0ff0e0772288269638214bf1 100755 (executable)
@@ -161,12 +161,9 @@ class NetDev(controller.Dev):
         """
         return ':'.join(map(lambda x: "%x" % x, self.mac))
 
-    def vifctl_params(self):
-        from xen.xend import XendDomain
-        xd = XendDomain.instance()
+    def vifctl_params(self, vmname=None):
         dom = self.controller.dom
-        dominfo = xd.domain_get(dom)
-        name = (dominfo and dominfo.name) or ('DOM%d' % dom)
+        name = vmname or ('DOM%d' % dom)
         return { 'domain': name,
                  'vif'   : self.get_vifname(), 
                  'mac'   : self.get_mac(),
@@ -174,10 +171,10 @@ class NetDev(controller.Dev):
                  'script': self.script,
                  'ipaddr': self.ipaddr, }
 
-    def vifctl(self, op):
+    def vifctl(self, op, vmname=None):
         """Bring the device up or down.
         """
-        Vifctl.vifctl(op, **self.vifctl_params())
+        Vifctl.vifctl(op, **self.vifctl_params(vmname=vmname))
 
     def destroy(self):
         """Destroy the device's resources and disconnect from the back-end
@@ -186,7 +183,6 @@ class NetDev(controller.Dev):
         def cb_destroy(val):
             self.controller.send_be_destroy(self.vif)
         self.vifctl('down')
-        #d = self.controller.factory.addDeferred()
         d = defer.Deferred()
         d.addCallback(cb_destroy)
         self.controller.send_be_disconnect(self.vif, response=d)
@@ -272,7 +268,6 @@ class NetifController(controller.Controller):
     def reattach_devices(self):
         """Reattach all devices when the back-end control domain has changed.
         """
-        #d = self.factory.addDeferred()
         self.send_be_create(vif)
         self.attach_fe_devices()